//#include <iostream>
//#include <unordered_map>
//using namespace std;
//
//bool YN(unordered_map<char, int>& hash1, string& str2, int& k)
//{
//    int n = 0;
//    unordered_map<char, int> hash2;
//    for (auto s : str2)
//    {
//        if (!hash1.count(s))
//        {
//            return false;
//        }
//        hash2[s]++;
//        if (hash2[s] > hash1[s])
//        {
//            return false;
//        }
//        n++;
//    }
//    if (k < n)
//    {
//        return false;
//    }
//    return true;
//}
//
//int main() {
//    string str1;
//    string str2;
//    cin >> str1 >> str2;
//    unordered_map<char, int> hash1;
//    int k = 0;
//    for (auto s : str1)
//    {
//        hash1[s]++;
//        k++;
//    }
//    if (YN(hash1, str2, k))
//    {
//        cout << "Yes" << endl;
//    }
//    else
//    {
//        cout << "No" << endl;
//    }
//    return 0;
//}


#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

int main() {
    int n;
    cin >> n;
    vector<int> st;
    int k = n * 3;
    while (k--)
    {
        int p;
        cin >> p;
        st.push_back(p);
    }
    sort(st.begin(), st.end());
    if (n % 2)
    {
        cout << st[(n * 3) / 2] << endl;
    }
    else
    {
        cout << (st[(n * 3) / 2] + st[(n * 3) / 2 - 1]) << endl;
    }
    return 0;
}

int main() {
    int n;
    cin >> n;
    vector<int> st;
    int k = n * 3;
    while (k--)
    {
        int p;
        cin >> p;
        st.push_back(p);
    }
    sort(st.begin(), st.end());
    long long sum = 0;
    k = n * 3 - 2;
    int i = 0;
    while (i < n)
    {
        sum += st[k];
        k -= 2;
        i++;
    }
    cout << sum << endl;
    return 0;
}

#include <iostream>
#include <vector>
#include <unordered_map>
using namespace std;

int N = 10001;

int main() {
    int n;
    cin >> n;
    unordered_map<int, int> hash;
    int k = n;
    while (k--)
    {
        int p;
        cin >> p;
        hash[p] += p;
    }

    vector<int> hash1(N);
    vector<int> hash2(N);
    for (int i = 1; i < N; i++)
    {
        hash1[i] = hash[i] + hash2[i - 1];
        hash2[i] = max(hash1[i - 1], hash2[i - 1]);
    }
    cout << max(hash1[N - 1], hash2[N - 1]) << endl;
    return 0;
}